// pieChart.js

// 初始化饼图
function initPieChart() {
    const pieChart = echarts.init(document.getElementById('obstacle-chart'));

    const obstacleOption = {
        tooltip: {
            trigger: 'item',
            formatter: '{a} <br/>{b}: {c} ({d}%)'
        },
        legend: {
            orient: 'vertical',
            left: 'left',
            textStyle: {
                color: '#fff'
            }
        },
        series: [{
            name: '障碍物类型',
            type: 'pie',
            radius: ['50%', '70%'],
            center: ['60%', '55%'],
            avoidLabelOverlap: false,
            itemStyle: {
                borderRadius: 5,
                borderColor: '#0C2B5B',
                borderWidth: 2
            },
            label: {
                show: true,
                color: '#fff',
                formatter: '{b}: {d}%'
            },
            color: [
                '#37A2DA',  // 圆形障碍物
                '#32C5E9',  // 柱形障碍物
                '#67E0E3',  // 扇形障碍物
                '#9FE6B8',  // 多边形障碍物
                '#FFDB5C'   // 其他障碍物
            ],
            data: [
                { value: 335, name: '圆形' },
                { value: 310, name: '柱形' },
                { value: 234, name: '扇形' },
                { value: 135, name: '多边' },
                { value: 154, name: '其他' }
            ],
            emphasis: {
                itemStyle: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                }
            }
        }]
    };

    // 设置初始配置
    pieChart.setOption(obstacleOption);

    // 模拟饼图数据更新
    setInterval(() => {
        const newData = obstacleOption.series[0].data.map(item => ({
            ...item,
            value: Math.floor(Math.random() * 400 + 100)
        }));

        pieChart.setOption({
            series: [{
                data: newData
            }]
        });
    }, 1000);
}